﻿using System;
using System.Linq;
using System.Text;
using DevExpress.Xpo;
using DevExpress.ExpressApp;
using System.ComponentModel;
using DevExpress.ExpressApp.DC;
using DevExpress.Data.Filtering;
using DevExpress.Persistent.Base;
using System.Collections.Generic;
using DevExpress.ExpressApp.Model;
using DevExpress.Persistent.BaseImpl;
using DevExpress.Persistent.Validation;
using Tida.Module.BusinessObjects.客户管理;
using System.Drawing;
using Tida.Module.BusinessObjects.系统管理;

namespace Tida.Module.BusinessObjects.研发中心
{
    [NavigationItem("研发中心")]
    [XafDisplayName("设计评审")]
    [DefaultProperty("新项目编码")]
    [DefaultClassOptions]
    public class 设计输入评审 : 系统管理.BaseInf
    { // Inherit from a different class to provide a custom primary key, concurrency and deletion behavior, etc. (https://documentation.devexpress.com/eXpressAppFramework/CustomDocument113146.aspx).
        public 设计输入评审(Session session)
            : base(session)
        {
        }
        public override void AfterConstruction()
        {
            base.AfterConstruction();
            // Place your initialization code here (https://documentation.devexpress.com/eXpressAppFramework/CustomDocument112834.aspx).
        }

        protected override void OnSaving()
        {
            if (Session.ObjectLayer is DevExpress.ExpressApp.Security.ClientServer.SecuredSessionObjectLayer)
            {


                // Client  
            }
            else
            {


                if (状态.类型 == "完成")
                {




                }


                // Server  


            }


            base.OnSaving();
        }


        // Fields...
        #region 底部栏位


        private 项目详情 _项目详情;
   
        private 产品需求.报价需求单 _相关需求清单;
        private 状态 _状态;
        private bool _是否调光;
        private string _光源形状;
        private string _能效证书;
        private string _安规证书;
        private 光源安装类别 _光源安装类别;
        private 开关类型 _开关种类;
        private int _首批订单数量;
        private string _系列名;
        private string _RGB;
        private string _品质需求;
        private DateTime _估价时间;
        private string _产品系统;
        private decimal _工程师工时;
        private decimal _间接费或劳动力;
        private decimal _证书费;
        private decimal _新模费;
        private decimal _样品费;
        private DateTime _首批出货时间;
        private DateTime _客户推广样品;
        private DateTime _首次样品;
        private DateTime _确认图;
        private string _模费摊付;
        private string _样品需求;
        private decimal _估价;
        private int _年预估订单数量;
        private string _包装需求;
        private string _IP等级或使用环境;
        private string _保质期;
        private string _其他证书;
        private string _EMC或FCC;
    
        private string _驱动器证书;
        private string _驱动参数;
        private string _驱动厂商;
        #region 光源信息
        private string _光源寿命;
        private string _Led灯珠信息;
        private string _色容差;
        private string _显止;
        private string _明流;
        private string _色温;
        private bool _含不含光源;
        #endregion
        #region 电线信息
        private 电线类型 _外露电线种类;
        private string _外露电线颜色;
        private string _外露电线长度;
        #endregion
        private string _开关颜色;
        private string _开关位置;
        #region 底部栏位
        private Sys_User _批核;
        private Sys_User _制表;
        private string _版次;
        #endregion
        #endregion
        #region 项目团队
        private Sys_User _品质人员;
        private Sys_User _主要采购员;
        private Sys_User _工艺工程师;
        private Sys_User _电子工程师;
        private Sys_User _结构工程师;
        private Sys_User _项目负责人;
        #endregion


        private string _功能描述;
        #region 电压相关
        private string _输出功率;
        private string _输出频率;
        private string _输入频率;
        private decimal _输出电压;
        private decimal _输入电压;
        #endregion

        #region 基本信息
        private Image _产品图片;
        private string _临时编号;
        private 产品类型 _产品类型;
        private 客户信息 _客户;
        private string _新项目编码;
        private string _灯罩材质;
        private string _灯罩颜色;
        private string _灯体颜色;
        private string _产品尺寸;



        public 项目详情 项目详情
        {
            get
            {
                return _项目详情;
            }
            set
            {
                SetPropertyValue("项目详情", ref _项目详情, value);
            }
        }




        public 产品需求.报价需求单 相关需求清单
        {
            get
            {
                return _相关需求清单;
            }
            set
            {
                SetPropertyValue("相关需求清单", ref _相关需求清单, value);
            }
        }
        public 状态 状态
        {
            get
            {
                return _状态;
            }
            set
            {
                SetPropertyValue("状态", ref _状态, value);
            }
        }
        public bool 是否调光
        {
            get
            {
                return _是否调光;
            }
            set
            {
                SetPropertyValue("是否调光", ref _是否调光, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 光源形状
        {
            get
            {
                return _光源形状;
            }
            set
            {
                SetPropertyValue("光源形状", ref _光源形状, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 能效证书
        {
            get
            {
                return _能效证书;
            }
            set
            {
                SetPropertyValue("能效证书", ref _能效证书, value);
            }
        }
        public 光源安装类别 光源安装类别
        {
            get
            {
                return _光源安装类别;
            }
            set
            {
                SetPropertyValue("光源安装类别", ref _光源安装类别, value);
            }
        }
        public 开关类型 开关种类
        {
            get
            {
                return _开关种类;
            }
            set
            {
                SetPropertyValue("开关种类", ref _开关种类, value);
            }
        }


        public int 首批订单数量
        {
            get
            {
                return _首批订单数量;
            }
            set
            {
                SetPropertyValue("首批订单数量", ref _首批订单数量, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 系列名
        {
            get
            {
                return _系列名;
            }
            set
            {
                SetPropertyValue("系列名", ref _系列名, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 产品系统
        {
            get
            {
                return _产品系统;
            }
            set
            {
                SetPropertyValue("产品系统", ref _产品系统, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 品质需求
        {
            get
            {
                return _品质需求;
            }
            set
            {
                SetPropertyValue("品质需求", ref _品质需求, value);
            }
        }



        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string RGB
        {
            get
            {
                return _RGB;
            }
            set
            {
                SetPropertyValue("RGB", ref _RGB, value);
            }
        }

        public decimal 工程师工时
        {
            get
            {
                return _工程师工时;
            }
            set
            {
                SetPropertyValue("工程师工时", ref _工程师工时, value);
            }
        }

        public decimal 间接费或劳动力
        {
            get
            {
                return _间接费或劳动力;
            }
            set
            {
                SetPropertyValue("间接费或劳动力", ref _间接费或劳动力, value);
            }
        }

        public decimal 证书费
        {
            get
            {
                return _证书费;
            }
            set
            {
                SetPropertyValue("证书费", ref _证书费, value);
            }
        }


        public decimal 新模费
        {
            get
            {
                return _新模费;
            }
            set
            {
                SetPropertyValue("新模费", ref _新模费, value);
            }
        }
        public decimal 样品费
        {
            get
            {
                return _样品费;
            }
            set
            {
                SetPropertyValue("样品费", ref _样品费, value);
            }
        }




        public DateTime 首批出货时间
        {
            get
            {
                return _首批出货时间;
            }
            set
            {
                SetPropertyValue("首批出货时间", ref _首批出货时间, value);
            }
        }

        public DateTime 客户推广样品
        {
            get
            {
                return _客户推广样品;
            }
            set
            {
                SetPropertyValue("客户推广样品", ref _客户推广样品, value);
            }
        }

        public DateTime 首次样品
        {
            get
            {
                return _首次样品;
            }
            set
            {
                SetPropertyValue("首次样品", ref _首次样品, value);
            }
        }


        public DateTime 估价时间
        {
            get
            {
                return _估价时间;
            }
            set
            {
                SetPropertyValue("估价时间", ref _估价时间, value);
            }
        }

        public DateTime 确认图
        {
            get
            {
                return _确认图;
            }
            set
            {
                SetPropertyValue("确认图", ref _确认图, value);
            }
        }



        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 模费摊付
        {
            get
            {
                return _模费摊付;
            }
            set
            {
                SetPropertyValue("模费摊付", ref _模费摊付, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 样品需求
        {
            get
            {
                return _样品需求;
            }
            set
            {
                SetPropertyValue("样品需求", ref _样品需求, value);
            }
        }
        public decimal 估价
        {
            get
            {
                return _估价;
            }
            set
            {
                SetPropertyValue("估价", ref _估价, value);
            }
        }
        public int 年预估订单数量
        {
            get
            {
                return _年预估订单数量;
            }
            set
            {
                SetPropertyValue("年预估订单数量", ref _年预估订单数量, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 包装需求
        {
            get
            {
                return _包装需求;
            }
            set
            {
                SetPropertyValue("包装需求", ref _包装需求, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string IP等级或使用环境
        {
            get
            {
                return _IP等级或使用环境;
            }
            set
            {
                SetPropertyValue("IP等级或使用环境", ref _IP等级或使用环境, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 保质期
        {
            get
            {
                return _保质期;
            }
            set
            {
                SetPropertyValue("保质期", ref _保质期, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 其他证书
        {
            get
            {
                return _其他证书;
            }
            set
            {
                SetPropertyValue("其他证书", ref _其他证书, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string EMC或FCC
        {
            get
            {
                return _EMC或FCC;
            }
            set
            {
                SetPropertyValue("EMC或FCC", ref _EMC或FCC, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 安规证书
        {
            get
            {
                return _安规证书;
            }
            set
            {
                SetPropertyValue("安规证书", ref _安规证书, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 驱动器证书
        {
            get
            {
                return _驱动器证书;
            }
            set
            {
                SetPropertyValue("驱动器证书", ref _驱动器证书, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 驱动参数
        {
            get
            {
                return _驱动参数;
            }
            set
            {
                SetPropertyValue("驱动参数", ref _驱动参数, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 驱动厂商
        {
            get
            {
                return _驱动厂商;
            }
            set
            {
                SetPropertyValue("驱动厂商", ref _驱动厂商, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 光源寿命
        {
            get
            {
                return _光源寿命;
            }
            set
            {
                SetPropertyValue("光源寿命", ref _光源寿命, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string Led灯珠信息
        {
            get
            {
                return _Led灯珠信息;
            }
            set
            {
                SetPropertyValue("Led灯珠信息", ref _Led灯珠信息, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 色容差
        {
            get
            {
                return _色容差;
            }
            set
            {
                SetPropertyValue("色容差", ref _色容差, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 显止
        {
            get
            {
                return _显止;
            }
            set
            {
                SetPropertyValue("显止", ref _显止, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 明流
        {
            get
            {
                return _明流;
            }
            set
            {
                SetPropertyValue("明流", ref _明流, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 色温
        {
            get
            {
                return _色温;
            }
            set
            {
                SetPropertyValue("色温", ref _色温, value);
            }
        }

        public bool 含不含光源
        {
            get
            {
                return _含不含光源;
            }
            set
            {
                SetPropertyValue("含不含光源", ref _含不含光源, value);
            }
        }



        public 电线类型 外露电线种类
        {
            get
            {
                return _外露电线种类;
            }
            set
            {
                SetPropertyValue("外露电线种类", ref _外露电线种类, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 外露电线颜色
        {
            get
            {
                return _外露电线颜色;
            }
            set
            {
                SetPropertyValue("外露电线颜色", ref _外露电线颜色, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 外露电线长度
        {
            get
            {
                return _外露电线长度;
            }
            set
            {
                SetPropertyValue("外露电线长度", ref _外露电线长度, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 开关颜色
        {
            get
            {
                return _开关颜色;
            }
            set
            {
                SetPropertyValue("开关颜色", ref _开关颜色, value);
            }
        }
        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 开关位置
        {
            get
            {
                return _开关位置;
            }
            set
            {
                SetPropertyValue("开关位置", ref _开关位置, value);
            }
        }



        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 产品尺寸
        {
            get
            {
                return _产品尺寸;
            }
            set
            {
                SetPropertyValue("产品尺寸", ref _产品尺寸, value);
            }
        }



        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 灯体颜色
        {
            get
            {
                return _灯体颜色;
            }
            set
            {
                SetPropertyValue("灯体颜色", ref _灯体颜色, value);
            }
        }



        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 灯罩颜色
        {
            get
            {
                return _灯罩颜色;
            }
            set
            {
                SetPropertyValue("灯罩颜色", ref _灯罩颜色, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 灯罩材质
        {
            get
            {
                return _灯罩材质;
            }
            set
            {
                SetPropertyValue("灯罩材质", ref _灯罩材质, value);
            }
        }

        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 新项目编码
        {
            get
            {
                return _新项目编码;
            }
            set
            {
                SetPropertyValue("新项目编码", ref _新项目编码, value);
            }
        }
        #endregion




        public 客户信息 客户
        {
            get
            {
                return _客户;
            }
            set
            {
                SetPropertyValue("客户", ref _客户, value);
            }
        }


        public 产品类型 产品类型
        {
            get
            {
                return _产品类型;
            }
            set
            {
                SetPropertyValue("产品类型", ref _产品类型, value);
            }
        }


        public string 临时编号
        {
            get
            {
                return _临时编号;
            }
            set
            {
                SetPropertyValue("临时编号", ref _临时编号, value);
            }
        }


        public Image 产品图片
        {
            get
            {
                return _产品图片;
            }
            set
            {
                SetPropertyValue("产品图片", ref _产品图片, value);
            }
        }


        public Sys_User 项目负责人
        {
            get
            {
                return _项目负责人;
            }
            set
            {
                SetPropertyValue("项目负责人", ref _项目负责人, value);
            }
        }




        public decimal 输入电压
        {
            get
            {
                return _输入电压;
            }
            set
            {
                SetPropertyValue("输入电压", ref _输入电压, value);
            }
        }


        public decimal 输出电压
        {
            get
            {
                return _输出电压;
            }
            set
            {
                SetPropertyValue("输出电压", ref _输出电压, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 输入频率
        {
            get
            {
                return _输入频率;
            }
            set
            {
                SetPropertyValue("输入频率", ref _输入频率, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 输出频率
        {
            get
            {
                return _输出频率;
            }
            set
            {
                SetPropertyValue("输出频率", ref _输出频率, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 输出功率
        {
            get
            {
                return _输出功率;
            }
            set
            {
                SetPropertyValue("输出功率", ref _输出功率, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 功能描述
        {
            get
            {
                return _功能描述;
            }
            set
            {
                SetPropertyValue("功能描述", ref _功能描述, value);
            }
        }

      





        public Sys_User 结构工程师
        {
            get
            {
                return _结构工程师;
            }
            set
            {
                SetPropertyValue("结构工程师", ref _结构工程师, value);
            }
        }


        public Sys_User 电子工程师
        {
            get
            {
                return _电子工程师;
            }
            set
            {
                SetPropertyValue("电子工程师", ref _电子工程师, value);
            }
        }


        public Sys_User 工艺工程师
        {
            get
            {
                return _工艺工程师;
            }
            set
            {
                SetPropertyValue("工艺工程师", ref _工艺工程师, value);
            }
        }



        public Sys_User  品质人员
        {
            get
            {
                return _品质人员;
            }
            set
            {
                SetPropertyValue("品质人员", ref _品质人员, value);
            }
        }


        public Sys_User 主要采购员
        {
            get
            {
                return _主要采购员;
            }
            set
            {
                SetPropertyValue("主要采购员", ref _主要采购员, value);
            }
        }


        [Size(SizeAttribute.DefaultStringMappingFieldSize)]
        public string 版次
        {
            get
            {
                return _版次;
            }
            set
            {
                SetPropertyValue("版次", ref _版次, value);
            }
        }

        public Sys_User 制表
        {
            get
            {
                return _制表;
            }
            set
            {
                SetPropertyValue("制表", ref _制表, value);
            }
        }


        public Sys_User 批核
        {
            get
            {
                return _批核;
            }
            set
            {
                SetPropertyValue("批核", ref _批核, value);
            }
        }



    }
}